I have been investigating a network hardware offload issue with the Realtek RTL8125BG 2.5G on the same XCP-ng host computer. This separate issue was resolved by shutting off TX checksum offload on the physical interface.

It made me think that maybe the mouse problem is caused by something similar on the other NIC. The second NIC in the computer is Realtek R8111EPV (1G)(using Linux r8169 driver) which is the one I have been using when I noticed the mouse issue. So I ran a capture test on the XCP-ng host:

tcpdump -i eth1 -v -nn | grep incorrect

and found bad packet checksums on some of the received packets coming in to the Windows VM:

x.x.x.x.443 > [windows.vm.ip].49715: Flags [P.], cksum 0xc656 (incorrect -> 0xb854), seq 1:2433, ack 216, win 2052, length 2432 x.x.x.x.443 > [windows.vm.ip].49717: Flags [P.], cksum 0x2e6c (incorrect -> 0xcff2), seq 1:2921, ack 218, win 501, length 2920 x.x.x.x.443 > [windows.vm.ip].49720: Flags [.], cksum 0x1b11 (incorrect -> 0xb99c), seq 1:2921, ack 213, win 16384, length 2920 ...

Running this on the XCP-ng host stopped the checksum errors:

ethtool -K eth1 gro off # testing only, not persistent

Making this setting persistent:

xe pif-param-set uuid=my_eth1_PIF_UUID other-config:ethtool-gro="off"

After making this change I will monitor the VM to see if the mouse problem returns.